local player = game.Players.Zenogale local func = {} local Character = player.Character while Character.Humanoid:GetState() ~= Enum.HumanoidStateType.Dead do if not Character then break end local v = workspace:GetPartBoundsInRadius(Character.PrimaryPart.Position, 15, OverlapParams.new()) if v then for i, v in pairs(v) do if (v.Parent:FindFirstChildOfClass("Humanoid") and v.Name == "HumanoidRootPart") or ((v.Parent.Name == "Ball" or v.Name == "Ball") and v.Parent:IsA("Tool") and v.Parent.Parent.ClassName ~= "Model") then local bv = Instance.new("BodyVelocity") bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) bv.Parent = v local RUnService = game:GetService("RunService") local Radius = 18 local Rotation = 0 local Speed = 1*(1+(Radius/10)) local nume = math.random(1, 1000000) func[nume] = RUnService.Stepped:Connect(function(Tick, Delta) Rotation += Speed * Delta if not bv then func[nume]:Disconnect() end local FaceFront = v.CFrame:ToObjectSpace(Character.PrimaryPart.CFrame).LookVector v.CFrame = Character.PrimaryPart.CFrame*CFrame.new(math.cos(Rotation)*Radius, math.sin(Rotation)*Radius, 0) * CFrame.Angles(math.asin(FaceFront.Y), -math.asin(FaceFront.X), math.asin(FaceFront.Z)) end) bv.Velocity = Vector3.new() game.Debris:AddItem(bv, 3) end end end task.wait() end for i,v in pairs(func) do v:Disconnect() end